package com.wzz.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wzz.dto.export.QuExportDTO;
import com.wzz.dto.ext.QuDetailDTO;
import com.wzz.dto.request.QuQueryReqDTO;
import com.wzz.entity.Question;
import com.wzz.vo.PageResponse;
import com.wzz.vo.QuestionVo;

import java.util.List;


public interface QuestionService extends IService<Question> {

    /**
     * 获取问题
     * @param questionType
     * @param questionBank
     * @param questionContent
     * @param pageNo
     * @param pageSize
     * @return
     */
    PageResponse<Question> getQuestion(String questionType, String questionBank, String questionContent, Integer pageNo, Integer pageSize);

    /**
     * 根据id获取问题信息
     * @param id
     * @return
     */
    QuestionVo getQuestionVoById(Integer id);

    /**
     * 根据ids获取问题信息
     * @param ids
     * @return
     */
    PageResponse<QuestionVo> getQuestionVoByIds(List<Integer> ids);

    /**
     * 根据ids删除问题
     * @param questionIds
     */
    void deleteQuestionByIds(String questionIds);

    /**
     * 添加问题
     * @param questionVo
     */
    void addQuestion(QuestionVo questionVo);

    /**
     * 更新问题
     * @param questionVo
     */
    void updateQuestion(QuestionVo questionVo);



    /**
     * 查找导出列表
     * @param query
     * @return
     */
    List<QuExportDTO> listForExport(QuQueryReqDTO query);

    /**
     * 导入Excel
     * @param dtoList
     * @return
     */
    int importExcel(List<QuExportDTO> dtoList);

    /**
     * 保存试题
     * @param reqDTO
     */
    void save(QuDetailDTO reqDTO);

}
